7. 反转整数

一、题目原型:

给定一个 32 位有符号整数,将整数中的数字进行反转。
输入: 123
输出: 321
输入: -123
输出: -321
输入: 120
输出: 21

二、题目意思剖析:

1
2
3
用原整数一直余10,保存起来和sum*10相加再赋值给sum
sum = sum * 10 + tempX % 10
tempX = tempX / 10

三、解题思路:

1
2
3
4
5
6
7
8
9
10
11
12
func reverse(_ x: Int) -> Int {
var tempX:Int = x
var sum: Int = 0
while tempX != 0 {
sum = sum * 10 + tempX % 10
tempX = tempX / 10
}
if sum > Int32.max || sum < Int32.min {
return 0
}
return sum
}

四、小结

就比较简单,普通的算法。

耗时32毫秒,超过62.5%的提交记录,总提交数1032

有其他好的方法请极速留言,非常乐意一起探讨。😄

坚持原创技术分享,您的支持将鼓励我继续创作!